
int length(const char * m_string);

int indexOf(const char * m_string, const char m_char, int begin = 0);
int indexOf(const char * m_string, const char * m_substring, int begin = 0);

int lastIndexOf(const char * m_string, const char m_char, int begin = 0);
int lastIndexOf(const char * m_string, const char * m_substring, int begin = 0);

char * subString(const char * m_string, int begin, int end);
char * subString(const char * m_string, int begin);

char * replace(const char * m_string, const char * m_str1, const char * m_str2, int begin = 0, bool all = true);

char * trimLead(const char * m_string);
char * trimTrail(const char * m_string);
char * trim(const char * m_string);

char * clone(const char * m_string);

bool equals(const char * m_str1, const char * m_str2);
bool equalsIgnoreCase(const char * m_str1, const char * m_str2);

char * valueOf(bool val);
char * valueOf(char val);
char * valueOf(short val);
char * valueOf(int val);
char * valueOf(long val);
char * valueOf(long long val);
char * valueOf(float val, int precision = 9);

char * valueOfAsWord(bool b);

char * toLowerCase(const char * m_string);
char * toUpperCase(const char * m_string);

char * reverse(const char * m_string);

char * append(const char * m_str1, const char * m_str2);